---
layout: docs
page_title: Run Consul-Terraform-Sync
description: >-
  Consul-Terraform-Sync requires a Terraform Provider, a Terraform Module and a running Consul Cluster outside of the `consul-terraform-sync` daemon.
---

# Run Consul-Terraform-Sync

1. Move the `consul-terraform-sync` binary to a location available on your `PATH`.

  ```shell-session
  $ mv ~/Downloads/consul-terraform-sync /usr/local/bin/consul-terraform-sync
  ```

2. Create the config.hcl file, all the options are available [here](/docs/nia/configuration).

3. Run Consul-Terraform-Sync (CTS).

  ```shell-session
  $ consul-terraform-sync start -config-file <config.hcl>
  ```

4. Check status of tasks. Replace port number if configured in Step 2. See additional API endpoints [here](/docs/nia/api)

  ```shell-session
  $ curl localhost:8558/status/tasks
  ```

## Other Run modes

CTS allows you to inspect your configuration before applying any change and to run in once mode, meaning that you can verify the changes are correctly applied in a test run before running it in unsupervised daemon mode.

To learn more on these options check the [Consul-Terraform-Sync Run Modes and Status Inspection](https://learn.hashicorp.com/tutorials/consul/consul-terraform-sync-run-and-inspect?utm_source=WEBSITE&utm_medium=WEB_IO&utm_offer=ARTICLE_PAGE&utm_content=DOCS) tutorial.
